package com.insta.formation.library.manager;

import java.util.Set;

import com.insta.formation.library.model.IBook;
import com.insta.formation.library.model.IExemplary;

public interface ILibrary
{

	Set<IExemplary> getAllExamplaires();

	void addExemplaire(IBook _book);

	void addExemplaires(IBook _book, int nbExemplaire);

	/**
	 * enleve nb examplaire du livre
	 * 
	 * @param _book
	 * @param nbExemplaire
	 * @throws NotEnoughtExemplaireException
	 */
	void removeExemplaires(IBook _book, int nbExemplaire) throws NotEnoughtExemplaireException;

	/**
	 * suprimme un livre de la bibliotheque avec tous ces exemplaires
	 * 
	 * @param _book
	 */
	void removeBook(IBook _book);

	IExemplary getExemplaire(IBook _book);

	boolean existBook(IBook _book);
}
